/*
 * @Descripttion: 
 * @version: 
 * @Author: -ViJia
 * @Date: 2020-05-22 14:03:37
 * @LastEditors: -ViJia
 * @LastEditTime: 2021-12-15 17:46:17
 */
import Vue from 'vue';
import Router from 'vue-router';
import { RoutersMap } from './routers';

// const originalPush = Router.prototype.push;
// Router.prototype.push = function (location) {
//   try {
//     return originalPush.call(this, location).catch(err => err);
//   } catch (error) {
//     console.error(error);
//   }
// };

const originalPush = Router.prototype.push
Router.prototype.push = function push(location, onResolve, onReject) {
  if (onResolve || onReject) return originalPush.call(this, location, onResolve, onReject)
  return originalPush.call(this, location).catch(err => err)
}

Vue.use(Router);

export default new Router({
  mode: 'history',
  base: process.env.BASE_URL,
  scrollBehavior: () => ({ y: 0 }),
  routes: RoutersMap,
});
